Maintenance optimization for asset performance management

ABSTRACT

A computer implemented method comprising receiving one or more predictive maintenance models each defining a time-based probability of failure for one or more components, receiving current performance data for the components, defining a failure function for each component from a predictive maintenance model for the component and the current performance data for the component, the failure function defining the probability of failure of the component in each of a set of time periods, defining a value loss function for each component from the failure function for the component and a time-based component cost, the value loss function defining the expected value loss due to a planned replacement of the component in a given time period before the component fails or reaches its scheduled end-of-life, receiving data defining one or more factors that have an impact on the cost of a maintenance option.

BACKGROUND

The present invention relates to a method and system for creating anoptimization model for components that need to be maintained.

SUMMARY

According to a first aspect of the present invention, there is provideda computer implemented method comprising, receiving one or morepredictive maintenance models each defining a time-based probability offailure for one or more components, receiving current performance datafor the components, defining a failure function for each component froma predictive maintenance model for the component and the currentperformance data for the component, the failure function defining theprobability of failure of the component in each of a set of timeperiods, defining a value loss function for each component from thefailure function for the component and a time-based component cost, thevalue loss function defining the expected value loss due to a plannedreplacement of the component in a given time period before the componentfails or reaches its scheduled end-of-life, receiving data defining oneor more factors that have an impact on the cost of a maintenance option,creating an optimization model for all components from the componentfailure functions, the value loss functions and the data defining one ormore factors that have an impact on the cost of a maintenance option,the solutions to the optimization model representing the per time periodeffect of one or more maintenance options.

According to a second aspect of the present invention, there is provideda system comprising a processor to receive one or more predictivemaintenance models each defining a time-based probability of failure forone or more components, receive current performance data for thecomponents, define a failure function for each component from apredictive maintenance model for the component and the currentperformance data for the component, the failure function defining theprobability of failure of the component in each of a set of timeperiods, define a value loss function for each component from thefailure function for the component and a time-based component cost, thevalue loss function defining the expected value loss due to a plannedreplacement of the component in a given time period before the componentfails or reaches its scheduled end-of-life, receive data defining one ormore factors that have an impact on the cost of a maintenance option,create an optimization model for all components from the componentfailure functions, the value loss functions and the data defining one ormore factors that have an impact on the cost of a maintenance option,the solutions to the optimization model representing the per time periodeffect of one or more maintenance options.

According to a third aspect of the present invention, there is provideda computer program product for controlling a system, the computerprogram product comprising a computer readable storage medium havingprogram instructions embodied therewith, the program instructionsexecutable by a processor to cause the processor to receive one or morepredictive maintenance models each defining a time-based probability offailure for one or more components, receive current performance data forthe components, define a failure function for each component from apredictive maintenance model for the component and the currentperformance data for the component, the failure function defining theprobability of failure of the component in each of a set of timeperiods, define a value loss function for each component from thefailure function for the component and a time-based component cost, thevalue loss function defining the expected value loss due to a plannedreplacement of the component in a given time period before the componentfails or reaches its scheduled end-of-life, receive data defining one ormore factors that have an impact on the cost of a maintenance option,create an optimization model for all components from the componentfailure functions, the value loss functions and the data defining one ormore factors that have an impact on the cost of a maintenance option,the solutions to the optimization model representing the per time periodeffect of one or more maintenance options.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Preferred embodiments of the present invention will now be described, byway of example only, with reference to the following drawings, wherein:

FIG. 1 is a schematic diagram of a series of machine and components,

FIG. 2 is a schematic diagram of a system connected to the machines,

FIG. 3 is a data flow diagram of a process of generating an optimizationmodel, and

FIG. 4 is schematic diagram of a graphical user interface to amaintenance option which is a solution for an optimization model.

DETAILED DESCRIPTION

FIG. 1 shows a series of machines 10 that are each made up of a numberof discrete components 12. The definition of what constitutes a machine10 and a component 12 is arbitrary, so for example each machine 10 couldbe a vehicle in a fleet of vehicles and each component could be discretecomponents within each vehicle. Alternatively, each machine 10 could bean individual element within a vehicle, such as a gearbox, a brakesystem and so on, with the components corresponding to lower levelcomponents within the individual gearbox and brake system and so on.Equally, the machines 10 could be machines within a production facilitysuch as car manufacturing plant, with the components considered asindividual components located within each machine.

Maintenance is needed on components 12, either to repair them when theyhave failed or to replace and/or service them, in anticipation of afuture failure. In very large production environments, the number ofmachines and hence the number of components can be very large and thecost of maintenance can be a very significant part of the resourcebudget. Cost can be considered to include multiple factors, not just thepure financial cost of parts and labor, there can be a production costof maintenance (lost production while machines are repaired), a timecost (time taken to repair/replace a working component versus time takento repair/replace a failed component), a space cost (the physical arearequired to perform maintenance) and so on. All of these factors have tobe considered when considering when and how machines and theircomponents should be maintained.

A big challenge in preventive maintenance is to minimize the risk ofequipment downtime associated with unexpected failures, while avoidingunnecessary or premature maintenance. There is a need to develop aneffective and efficient method and system to support a maintenanceplanner (who will determine maintenance scheduling) in choosing theright time to perform maintenance on the machines and their components,with the goal of minimizing the total cost, which can include, forexample, the total maintenance costs plus the cost of production lossesdue to equipment downtime. As uncertainty in equipment failure oftenplays a fundamental role in the total actual cost, while evaluating theright timing of maintenance activities, the solution has to take intoaccount the risk and the impact of unexpected equipment failures.Moreover, the solution has to take into account the fact that, whileanticipating a component replacement activity earlier than needed willreduce the equipment failure risk, the components cost due tounnecessary or premature replacement will increase.

Mathematical optimization can be used for maintenance planning.Optimization is frequently used to solve planning problems by aligningmaintenance plans with production plans, minimizing travel time formaintenance staff and ensuring high utilization of maintenance crews.However, results obtained from these models are sub-optimal as they failto consider properly the risks associated with the timing of maintenanceand the costs due to premature maintenance. Although these modelspresent the maintenance planner with maintenance plans that show a highutilization of maintenance resources and a low impact of plannedmaintenance on production, in reality due to the unexpected equipmentfailures, the actual maintenance costs and the actual impact ofdowntimes on production are often far higher than the presented valuesindicated by the model that the maintenance planner is using.

Predictive maintenance employs mathematics, statistics and machinelearning techniques to estimate expected failure dates so thatmaintenance can be scheduled shortly before failure. These models seekto reduce unexpected failures and reduce maintenance costs by avoidingpremature maintenance. The success of pure predictive maintenance isundermined by the fact that such an arrangement may result in highermaintenance costs than traditional time-based maintenance as maintenancein complex multi-component equipment is recommended independently foreach component. Pure predictive maintenance recommendations do not takeinto account the opportunities to combine (when possible) severalcomponent maintenance activities in just one equipment downtime toreduce the total downtime by factoring common moduledismounting/mounting needed to operate on the components. Predictivemaintenance may also result in maintenance plans that are not feasibleto carry out, for example due to insufficient maintenance resources ordue to the impact on the production schedule.

Stochastic simulation models can also be built to overcome theshortcoming of optimization in maintenance planning and predictivemaintenance. These simulation models simultaneously take into accountthe uncertainty associated with failure, the production schedule andavailable resources. Maintenance schedules derived through simulationhave the potential to result in low maintenance costs and low productionloss due to equipment failure. However the simulations tend to be toocostly to build and maintain, so much so that the cost of building andmaintaining can easily exceed the savings derived through an effectivestrategy. Finally, their lengthy response times may prevent these modelsfrom running in a reactive mode, where it is necessary to re-plan whenan unplanned failure occurs.

Stochastics programming can be used but given the complexity of theproblem, some further relevant assumptions and simplifications would benecessary so that the quality of the final solution may be acceptable.Moreover, quick response times, and models that are easy to maintain andextend to cover specific client requirements are key to the requirementsthat a solution based on stochastic programming cannot easily guarantee.Stochastic programs are usually harder to solve when applied toreal-world problems. A common approach is to consider the simplerdeterministic program in which random parameters are replaced by theirexpected values, with a loss in terms of quality of the solution. Theproblem with this approach is that often the solutions that aregenerated are average solutions that cannot be executable.

The machines 10 and components 12 of FIG. 1 have their maintenancescheduled in a solution that achieves the benefits of low productionimpact and high utilization of resources associated with optimizedmaintenance planning while also considering failure risk and itsinfluence on timing to reduce the impact of unplanned downtime onproduction and keep costs associated with premature maintenance incheck. The solution involves models that take significantly less time tobuild and maintain and are less computationally expensive thanstochastic simulation models. The solution provides a way to transform astochastic problem into a deterministic one that produces feasible(executable) and reasonably good solutions to the problem of thescheduling maintenance for the machines 10.

FIG. 2 shows a system 14 that is connected to the machines 10. Thesystem 14 includes a processor (e.g. CPU) 16 and a storage device (e.g.,database) 18 that is connected to the processor 16. A computer readablemedium 20 is also provided that comprises a computer program product.The computer program product comprises a set of instructions that areused to control the operation of the processor 16. The system 14receives information from the various machines 10 that relates to thecurrent operating conditions of the machines 10 and their components 12.The system 14 is designed to provide an output that will be accessed bya maintenance planner so that the planner will make the necessarydecisions relating to maintenance.

The system 14 uses stochastic failure predictions to optimizemaintenance activities using a deterministic model. The system 14 usesthe stochastic failure predictions of a predictive maintenance system tocreate a deterministic optimization model (in a preferred embodiment theprocessor 16 uses a Mixed Integer Linear Programming model) that, in theevaluation of a candidate solution and in addition to the businessgoals, takes into account both the risk and the impact of an earlierunexpected component failures and the expected component value loss dueto component replacement at the planned time. The processor 16 createsan optimization model for all of the components 12 which providessolution(s) that represent one or more maintenance options.

This process used by the system 14 results in models that are easy tobuild and maintain while mitigating the disadvantages associated withusing predictive maintenance on its own to derive a maintenance scheduleor using predictive maintenance as a deterministic input to amaintenance optimization model (usually modelled as due dates ordeadlines for the maintenance activities). Moreover, with respect toother more complex approaches, the process used by the system 14 has theadvantages that the process is scalable and a maintenance planner willeasily understand the solutions delivered by the optimization model. Themodel provides one or more maintenance options depending upon thebusiness decisions driving the choice of maintenance plan. For example,the lowest planned cost option may be sought or a balance between therisk and the expected cost of failures on one side and the plannedmaintenance/production on the other side may be sought. The system, in apreferred embodiment, provides the maintenance planner with alternativeplans (options) and the planner at the end selects one option. Theprocess is interactive in that the planner will interact with an initialoption provided by the system 14, for example making manual adjustmentsto a plan, releasing constraints or imposing new constraints, modifyingthe availability of resources and modifying the importance given togoals. The planner will then re-run the optimization to check again theresults and if needed making new modifications and re-running theoptimization again. The system 14 provides an iterative process thatwill end when the planner is happy with the plan and confirms the planfor the execution.

The modelling carried out by the system 14 is related to risk and theimpact of unexpected component failures and the expected component valueloss due to component replacement. The processor 16 divides the timehorizon into time buckets that define a set of time periods, measured inhours, days or week as appropriate to the machines and components beingconsidered. The decision variables of the problem define, for eachmachine 10 and for each component 12, in which time bucket the nextcomponent maintenance should take place, in light of the objectives ofthe maintenance plan. The model takes into account that severalpreparation and assembly and disassembly activities will be optimized ifthe maintenance activity of certain components is planned in the sametime bucket.

The system 14 models the risk and the impact of unexpected componentfailures. For each machine 10 and for each component 12, predictivemodels are used to estimate a probability mass function Pcfail of therandom variable that a component fails at time t. In the following, avalue will be defined as expected when the value will take into accountthe probability of the related events. For each machine 10, for eachcomponent 12, and for each time bucket the processor 16 starts from thePcfail and the average component repairing/replacement duration andresource requirements and calculates the expected time and resourcesneeded to repair/replace the component 12. This defines a function foreach component 12 from a predictive maintenance model and the currentperformance data for each component 12, which defines the likelihood offailure of the component 12 in question as a probability mass function.The current performance data preferably also includes information aboutthe operating conditions of the component 12 and the machine 10containing the component 12 which are transmitted by sensors connectedto the component 12 and to related parts in the machine 10.

For each machine 10 and for each time bucket, the system 14 calculatesthe probability mass function Pmfail that a machine downtime occurs dueto unexpected component failures. In a simple case this is just the sumof the failure probability of the components. The total expected purerepair/replace time and resources needed by the downtime are the sum ofall the respective values calculated at component level. At thesevalues, if the system 14 is to be conservative in the calculations, theprocessor 16 adds all the expected preparation, disassembly and assemblytimes and resources needed by each component 12. If the system 14 is tobe less conservative and assumes that the preparation, disassembly andassembly will be optimized, then the processor 16 adds the optimizedpreparation, disassembly and assembly time (this value will depend onthe specific components 12 and related preparation, disassembly andassembly rules) multiplied by Pmfail.

Finally, to calculate the total expected downtime and resourcerequirements the processor 16 will add the expected time and resourcesnecessary to model the extra time needed to manage the occurrence of anunexpected event. For each machine 10, with the above information, theprocessor 16 calculates the expected impact on the maintenance resourcesand on the production level due to an unplanned downtime for all thetime buckets that precede the planned maintenance downtime. The totalexpected impact on the maintenance resources and on the production leveldue to unplanned downtimes is finally an important weighted component ofthe global objective function to be optimized together the impact on themaintenance resources and on the production level due to planneddowntimes.

The system 14 also models the costs that would be incurred due to anearly component replacement. In order to do that, the processor 16,starting from the cost of each component 12 at each bucket after anamortization calculation and the component Pcfail, calculates, for eachcomponent and each bucket, the expected loss of component value due ifthe component would be replaced in that bucket (time window). The totalexpected loss of component value due to the planned componentreplacements will finally enter in the global objective function to beoptimized as an important weighted component.

In order to provide the maintenance planner with the possibility to takeinto account the expected impact of the uncertainties while evaluating amaintenance plan, a key element of the process is to have an easy andintuitive way to display the risk/impact associated to the plan.Workload resource histograms, graphics showing the impacts on productionand on the maintenance resources, and many other graphic tools can beused to make visible at the same time, by clearly differentiating them(for example with different colors), both the impact of the plan and therisks associated. The solution finally provides alerts to highlight tothe planner the impact of too risky situations. The maintenance planneraccesses a graphical user interface to the optimization model, whichshows the planner the effect of different maintenance options on thedelivery and cost of maintenance.

The process carried out by the system 14 transforms the stochasticoutput of predictive maintenance into a series of inputs for adeterministic model to take into account the uncertainty of the keyelements of the problem. This allows the solving of a stochastic problemusing a deterministic optimization model that is easy to build andmaintain and is computationally inexpensive compared with a stochasticsimulation model. The process groups maintenance tasks onmulti-component equipment together to reduce the total set-up cost.Several set-up optimization rules can apply. The system 14 provides aneasy and intuitive way to evaluate the risk of a given maintenance plan.This is useful both to evaluate an automatic solution provided by theoptimizer and to evaluate a manually generated solution (by scratch orby modifying interactively an automatic one).

FIG. 3 shows schematically the different elements of the processing ascarried out by the processor 16 of the system 14. The system 14 hasvarious different inputs and outputs and these are shown in the highlevel data flow diagram of FIG. 3. One or more predictive maintenancemodels 22 are provided along with current (real time) performance data24 for the components 12. The predictive maintenance models 22 define atime-based probability of failure for one or more of the components 12and are created by using historical data about component performance andfailures. Equipment failure predictions 26 are made, the output of whichis the component failure functions and expected value loss functions dueto planned replacements. The time-based cost of components 12 (afteramortization) is also provided as an input to box 26, as this is used inthe calculation of the expected value loss functions.

A failure function for each component 12 is defined from a predictivemaintenance model 22 for the component 12 and the current performancedata 24 for the component 12, where the failure function defining theprobability of failure of the component 12 in each of a set of timeperiods. An expected value loss function for each component 12 isdefined from the failure function for the component 12 and the componenttime-phased cost after amortization for the component 12, the expectedvalue loss function defining the expected value loss of component 12 ineach of the set of time periods assuming the replacement will be plannedin that bucket (time period). The value loss function for each componentis created from the failure function for the component and a time-basedcomponent cost, the value loss function defining the expected value lossdue to a planned replacement of the component in a given time periodbefore the component fails or reaches its scheduled end-of-life when thecomponent would be replaced. This provides the core structure for thedata to be processed in the optimization to provide the solutions to theoptimization model representing the per time period effect of one ormore maintenance options.

These computations are passed to a MILP optimization solver 28, whichalso receives as its input data 30 defining (as a minimum) componentcosts and maintenance costs. These costs are data defining one or morefactors that have an impact on the cost of a maintenance option. Thesecosts, in a preferred embodiment, are configured in terms of a purefinancial costs and/or time costs. Additional input data can relate tofactors such as average durations, resources requirements and theiravailability calendars, skills, mounting/di-mounting rules and so on.The factors can be component time-phased availability, durations of themaintenance activities on a component and of a mounting/di-mountingphases, rules to optimize the mounting/di-mounting, resourcerequirements of any activity, resources time-phased availability,standard resource cost and cost for extra capacity, time and cost toreact to a machine failure to be counted on top of the normaltimes/costs for performing a preventive maintenance, production orservice demand plan with the relative cost of partial fulfilment due tofailure or maintenance and so on.

The solver 28 will create one or more optimization model solutions ofwhich represent the per time period effect of one or more maintenanceoptions. The solver 28 is accessible via a user interface 32 whichpresents the proposed plan(s) to the maintenance planner who can alsoinput parameters and choices to influence the decision making. The roleof the system 14 is to provide an optimization model of the maintenancethat can be used to decide which maintenance option to use, through theuse of an optimization engine, which will depend on the factors that areconsidered to be most important, such as overall cost or safety marginin respect to failure of components and so on. The process does notoptimize each factor independently as generally factors are conflicting.The system 14 optimizes a global goal that has been defined as composedof several factors with their respective weights.

FIG. 4 shows the appearance of the graphical user interface 32, in apreferred embodiment, as generated by the processor 16. The graphicaluser interface 32 provides an illustration of a preferred maintenanceoption as a matrix of components against time periods and the impact onmaintenance resources and production of both planned and unplannedmaintenance. In FIG. 3, the columns in the table represent the differenttime periods for which maintenance can be carried out. Here the timeperiods are weeks, showing weeks 1 to 10 for a machine 10 that has twocomponents 12 (listed as Component 1 and Component 2). This is asimplified example, for the purpose of illustrating the outputting of asolution generated by the optimization model.

In this Figure a single maintenance option is illustrated, with thefirst component being scheduled for maintenance in week 9 and the secondcomponent being scheduled for week 7. The function pfail is shown foreach of the components 12, this is derived from the predictivemaintenance model(s) for the components 12 applied to the currentreal-time data about the present operation conditions and performance ofthe components 12. The pfail is a probability mass function which showsin which week the individual component is most likely to fail, with theprobabilities falling away either side of the most likely time period.The expected cost for early replacement is also shown for each of thecomponents 12, this impacts the decision as whether to performmaintenance early or not.

The planned maintenance downtime is shown in the table along with theexpected unplanned downtime and the total expected downtime. Thesevalues are a function of the decision about when maintenance is plannedand also for time periods where none is planned the probability of afailure in that week is multiplied by the time cost of an unplannedmaintenance, which will generally be greater than the time cost of aplanned maintenance. The different totals are visible for the differenttime periods used in the table of FIG. 4 and cells within the table arecolored based on the numbers within in each cell, in order that criticalaspects are easily highlighted to the planner. These reflect the globalsum of the likely outcomes for the different components 12 that make upthe total components being covered by the optimization model.

The maintenance option that is shown in FIG. 4 is clearly visualized forthe benefit of the maintenance planner. The planner can see thatmaintenance of the second component is scheduled for week 7, one weekbefore the most likely week for that component to fail. However, themaintenance of component 1 is scheduled for week 9, which is fully fourweeks after the most likely week for the component to fail (week 5).Although the risk of early failure occurs, this is offset by the totalcost of the replacing the component early and in balance latermaintenance is preferred. The reason behind the late scheduling of themaintenance of the specific component relates to the early replacementcost and may also depend from the interactions with other maintenanceactivities (the total resource requirements might have exceeded thestandard capacity of available resources and the system decided that thebest decision was to delay that maintenance activity of that component).

Data defining a maximum maintenance capacity per time period for allcomponents can be used in the creation of the optimization model. Forall components, the processor 16 defines maintenance options that do notexceed the maximum maintenance capacity per time period for allcomponents. This ensures that the maintenance option presented to theplanner is feasible with respect to the resources available and takesinto account all of the components 12 that are covered by the model.Since in practice very large numbers of components 12 will be covered bythe maintenance options, resource availability is a significant limitingfactor in the selection of the desired maintenance option and theprocessor 16 must present a workable scheme to the planner. Capacity canrelate to any resource that is needed to perform the maintenanceactivities, from skilled workers, to maintenance material, spare parts,equipment, space and so on.

The processor 16 can receive an input from the planner defining a set ofdesired optimization outcomes, each defined optimization outcomedefining one or more factors to be optimized. For example, cost may bethe driving factor and the planner can input this into the model as apreferred outcome, that the maintenance option presented will be thelowest cost option available within the constraints of availableresources. Equally, the planner may be driving the maintenance scheduleto limit disruption on specific time periods, if they relate toimportant production capability. In this case the maximum amount ofreduced production capacity can be set as a factor that can drive theoptimization outcome. The planner can even set a level of importance(usually in the form of a ‘weight’ or a priority) to each factor to beoptimized and the processor 16 can propose maintenance plan options thatoptimize those factors taking into account the importance the plannergave to each factor.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

What is claimed is:
 1. A system, comprising: a processor capable ofperforming a method comprising: receiving one or more predictivemaintenance models each defining a time-based probability of failure forone or more components; receiving current performance data for thecomponents; defining a failure function for each component from apredictive maintenance model for the component and the currentperformance data for the component, the failure function defining theprobability of failure of the component in each of a set of timeperiods; defining a value loss function for each component from thefailure function for the component and a time-based component cost, thevalue loss function defining the expected value loss due to a plannedreplacement of the component in a given time period before the componentfails or reaches its scheduled end-of-life; receiving data defining oneor more factors that have an impact on the cost of a maintenance option;defining one or more time buckets, wherein the one or more time bucketsdefine a time period in which maintenance takes place for the one ormore components, wherein maintenance activities are optimized inresponse to the maintenance for one or more components being planned ina same time bucket associated with the one or more time buckets; foreach of the one or more time buckets, determining a machine downtime dueto an unexpected failure of the one or more components, and determiningan expected impact on production and on maintenance resources due to themachine downtime; creating and presenting a plurality of interactiveoptimization models for each component from the component failurefunctions, the value loss functions and the data defining one or morefactors that have an impact on the cost of a maintenance option, whereinthe created and presented plurality of interactive optimization modelscomprise adjustable and selectable maintenance options for eachcomponent; adjusting and updating at least one of the created andpresented plurality of interactive optimization models based on a useradding one or more different constraints on the at least one of thecreated and presented plurality of interactive optimization models,wherein the one or more different constraints are based on anavailability of resources and maintenance goals.
 2. The system accordingto claim 1, further comprising: receiving data defining a maximummaintenance capacity per time period for all components and whencreating the optimization model for all components to define maintenanceoptions that do not exceed the maximum maintenance capacity per timeperiod for all components.
 3. The system according to claim 1, furthercomprising: receiving an input defining a set of desired optimizationoutcomes, each defined optimization outcome defining one or more factorsto be optimized and wherein creating the optimization model for allcomponents defines maintenance options that each provide optimization ofeach factor defined in a desired optimization outcome.
 4. The systemaccording to claim 1, further comprising: determining a preferredmaintenance option with respect to a desired optimization outcome andoutput an illustration of the preferred maintenance option as a matrixof components against time periods plus the impact of the failurefunction for each component as a component cost.
 5. The system accordingto claim 4, further comprising: outputting a selection of maintenanceoptions and receive an input defining a preferred maintenance option. 6.A computer program product for controlling a system, the computerprogram product comprising a non-transitory computer readable storagemedium having program instructions embodied therewith, the programinstructions executable by a processor to cause the processor to:receive one or more predictive maintenance models each defining atime-based probability of failure for one or more components; receivecurrent performance data for the components; define a failure functionfor each component from a predictive maintenance model for the componentand the current performance data for the component, the failure functiondefining the probability of failure of the component in each of a set oftime periods; define a value loss function for each component from thefailure function for the component and a time-based component cost, thevalue loss function defining the expected value loss due to a plannedreplacement of the component in a given time period before the componentfails or reaches its scheduled end-of-life; receive data defining one ormore factors that have an impact on the cost of a maintenance option;defining one or more time buckets, wherein the one or more time bucketsdefine a time period in which maintenance takes place for the one ormore components, wherein maintenance activities are optimized inresponse to the maintenance for one or more components being planned ina same time bucket associated with the one or more time buckets; foreach of the one or more time buckets, determining a machine downtime dueto an unexpected failure of the one or more components, and determiningan expected impact on production and on maintenance resources due to themachine downtime; creating and presenting a plurality of interactiveoptimization models for each component from the component failurefunctions, the value loss functions and the data defining one or morefactors that have an impact on the cost of a maintenance option, whereinthe created and presented plurality of interactive optimization modelscomprise adjustable and selectable maintenance options for eachcomponent; adjusting and updating at least one of the created andpresented plurality of interactive optimization models based on a useradding one or more different constraints on the at least one of thecreated and presented plurality of interactive optimization models,wherein the one or more different constraints are based on anavailability of resources and maintenance goals.
 7. The computer programproduct according to claim 6, further comprising: program instructionsto receive data defining a maximum maintenance capacity per time periodfor all components and wherein the instructions for creating of theoptimization model for all components comprise instructions for definingmaintenance options that do not exceed the maximum maintenance capacityper time period for all components.
 8. The computer program productaccording to claim 6, further comprising: program instructions toreceive an input defining a set of desired optimization outcomes, eachdefined optimization outcome defining one or more factors to beoptimized and wherein the instructions for creating of the optimizationmodel for all components comprise instructions for defining maintenanceoptions that each provide optimization of each factor defined in adesired optimization outcome.
 9. The computer program product accordingto claim 6, further comprising: program instructions to determine apreferred maintenance option with respect to a desired optimizationoutcome and outputting an illustration of the preferred maintenanceoption as a matrix of components against time periods plus the impact ofthe failure function for each component as a component cost.
 10. Thecomputer program product according to claim 9, further comprising:program instructions to output a selection of maintenance options andreceiving an input defining a preferred maintenance option.